Methods and apparatus to configure a process control system using an electronic description language script

ABSTRACT

Example methods and apparatus to configure a process control system using an electronic description language (EDL) script are disclosed. A disclosed example method comprises loading a first script representative of a process plant, the first script comprising an interpretive system-level script structured in accordance with an electronic description language, and compiling the first script to form a second script, the second script structured in accordance with a vendor-specific configuration language associated with a particular process control system for the process plant.

FIELD OF THE DISCLOSURE

This disclosure relates generally to process control systems and, moreparticularly, to methods and apparatus to configure a process controlsystem using an electronic description language (EDL) script.

BACKGROUND

Electronic device description languages (EDDLs) have been used toprovide a structured and standardized format to describe and specifyfield devices of process plants to facilitate interpretation, controland/or management of the field devices by the control components of ahost process control system. As such, EDDLs typically incorporatestandardized interfaces for parameterization and visualization of dataassociated with the field devices. More recently, EDDLs have beenenhanced to describe and/or specify advanced displays and/or graphicalrepresentations of field device data.

SUMMARY

A disclosed example method includes loading a first scriptrepresentative of a process plant, the first script comprising aninterpretive system-level script structured in accordance with anelectronic description language, and compiling the first script to forma second script, the second script structured in accordance with avendor-specific configuration language associated with a particularprocess control system for the process plant.

A disclosed example apparatus includes an editor useable to create afirst script representative of a process plant, the first scriptcomprising an interpretable system-level script structured in accordancewith an electronic description language, and a compiler to form a secondscript from the first script, the second script structured in accordancewith a vendor-specific configuration language associated with aparticular process control system for the process plant.

Another disclosed example method includes utilizing an editor to form afirst script representative of a process plant, the first scriptcomprising an interpretive system-level script structured in accordancewith an electronic description language, generating a second script fromthe first script, the second script structured in accordance with aconfiguration language for a particular process control system, andconfiguring the process control system for the process plant based onthe second script.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of an example process control systemconstructed in accordance with the teachings of this disclosure.

FIG. 2 illustrates an example manner of implementing the example processplant configuration system of FIG. 1.

FIG. 3 illustrates an example manner of implementing the examplecompiler of FIG. 2.

FIG. 4 illustrates an example schema that may be used to graphicallyrepresent the example process control system of FIG. 1.

FIG. 5 illustrates an example system-level EDL script that may be usedto represent the example schema of FIG. 4.

FIGS. 6-9 illustrate example schema elements that may be used to form aschema for a process control system.

FIG. 10 illustrates an example system-level EDL script constructed fromthe example schema elements of FIGS. 8 and 9.

FIG. 11 is a flowchart representative of an example process that may beused to configure the example process control system of FIG. 1 based ona system-level EDL script.

FIG. 12 is a flowchart representative of an example process that may beused to convert a system-level EDL script into a process control systemspecific configuration script.

FIG. 13 is a schematic illustration of an example processor platformthat may be used and/or programmed to carry out the example processes ofFIGS. 11 and/or 12 and/or, more generally, to implement the exampleprocess plant configuration system of FIGS. 1 and 2.

DETAILED DESCRIPTION

In general, the example apparatus, methods, and articles of manufacturedescribed herein may be used to define, describe and/or otherwisespecify all or any portion(s) of a process plant control system via anelectronic description language (EDL) script and/or an interpretativesystem-level script. In some EDL script languages, such as thoseconstructed in accordance with an extensible markup language (XML), suchEDL scripts are also referred to as schemas. Previously, electronicdevice description languages (EDDLs) and EDL scripts were only used todefine, describe and/or otherwise specify the field devices of a processcontrol system. In contrast, the example EDL scripts described hereinare useable to define, describe and/or otherwise specify any numberand/or type(s) of additional and/or alternative control and/ornon-control components of the process control system. Moreover, theexample EDL scripts are useable to define, describe and/or specify anynumber and/or type(s) of interconnections between any or all componentsof the process control system. Thus, in some examples, a single schemacan be used to define the entirety of a process control system. Examplecomponents of a process control system that have not previously beendefined via an EDL script include, but are not limited to, a controller,an operator workstation, an input/output (I/O) card, a router, a switch,a hub, a firewall, a power supply, and/or an I/O gateway.

The example EDL scripts described herein are constructed to supportprocess control system components manufactured, provided and/orimplemented by any process control system vendor. Accordingly, asdescribed more fully below in connection with FIG. 3, such EDL scriptscan subsequently be compiled, translated, interpreted and/or otherwiseprocessed to form one or more vendor-specific and/or system-specificscripts that may then be loaded into and/or otherwise used to configureparticular process control system components from any number ofparticular component vendors. As such, such vendor and/orsystem-specific scripts are generally structured in accordance with avendor-specific configuration language.

FIG. 1 is a schematic illustration of an example process control system100. In the interest of brevity and clarity, throughout the followingdisclosure references will be made to the example process control system100 of FIG. 1. However, the methods and apparatus described herein todefine, specify, describe and/or configure a process control systembased on EDL scripts are applicable to other process control systems.The example process control system 100 of FIG. 1 includes one or moreprocess controllers (one of which is designated at reference numeral110), one or more operator stations (one of which is designated atreference numeral 115), and one or more workstations (one of which aredesignated at reference numeral 120). The example process controller110, the example operator station 115 and the workstation 120 arecommunicatively coupled via a bus and/or local area network (LAN) 125,which is commonly referred to as an application control network (ACN).

The example operator station 115 of FIG. 1 allows a process plantoperator to review and/or operate one or more operator display screensand/or applications that enable the process plant operator to viewprocess plant variables, view process plant states, view process plantconditions, view process plant alarms, and/or to change process plantsettings (e.g., set points and/or operating states, clear alarms,silence alarms, etc.). Such screens and/or applications are typicallydesigned and/or implemented by process configuration engineers.

The example workstation 120 of FIG. 1 may be configured as anapplication station to perform one or more information technologyapplications, user-interactive applications and/or communicationapplications. For example, the workstation 120 may be configured toperform primarily process control-related applications, while anotherapplication station (not shown) may be configured to perform primarilycommunication applications that enable the process control system 100 tocommunicate with other devices or systems using any desiredcommunication media (e.g., wireless, hardwired, etc.) and protocols(e.g., HTTP, SOAP, etc.). The example operator station 115 and theexample workstation 120 of FIG. 1 may be implemented using one or moreworkstations and/or any other suitable computer systems and/orprocessing systems. The operator station 115 and/or workstation 120could, for example, be implemented using single processor personalcomputers, single or multi-processor workstations, etc.

The example LAN 125 of FIG. 1 may be implemented using any desiredcommunication medium and protocol. For example, the LAN 125 may be basedon a wired and/or wireless Ethernet communication scheme. However, aswill be readily appreciated by those having ordinary skill in the art,any other suitable communication medium(s) and/or protocol(s) could beused. Further, although a single LAN 125 is illustrated in FIG. 1, morethan one LAN and/or other alternative pieces of communication hardwaremay be used to provide redundant communication paths within the examplesystem 100 of FIG. 1.

The example controller 110 of FIG. 1 is coupled to a plurality of smartfield devices 130, 131 and 132 via a digital data bus 135 and aninput/output (I/O) gateway 140. The smart field devices 130-132 may beFieldbus compliant valves, actuators, sensors, etc., in which case, thesmart field devices 130-132 communicate via the digital data bus 135using the well-known Foundation Fieldbus protocol. Of course, othertypes of smart field devices and communication protocols could be usedinstead. For example, the smart field devices 130-132 could instead beProfibus and/or HART compliant devices that communicate via the data bus135 using the well-known Profibus and HART communication protocols.Additional I/O devices, which are different, similar and/or identical tothe I/O gateway 140, may be coupled to the controller 110 to enableadditional groups of smart field devices, which may be FoundationFieldbus devices, HART devices, etc., to communicate with the controller110.

In addition to the example smart field devices 130-132, one or morenon-smart field devices 133 and 134 may be communicatively coupled tothe example controller 110. The example non-smart field devices 133 and134 of FIG. 1 may be, for example, conventional 4-20 milliamp (mA) or0-10 volts direct current (VDC) devices that communicate with thecontroller 110 via respective links.

The example controller 110 of FIG. 1 may be, for example, a DeltaV™controller sold by Fisher-Rosemount Systems, Inc., an Emerson ProcessManagement company. However, any other controller could be used instead.Further, while only one controller 110 is shown in FIG. 1, additionalcontrollers and/or process control platforms of any desired type and/orcombination of types could be coupled to the LAN 125. In any case, theexample controller 110 performs one or more process control routinesassociated with the process control system 100 that have been generatedby a system engineer and/or other system operator using the operatorstation 115 and which have been downloaded to and/or instantiated in thecontroller 110.

To configure the control components of the example process controlsystem 100 (for example, the example controller 110, the exampleoperator station 115, the example workstation 120, the example I/Ogateway 140 and/or the example field devices 130-134) based on one ormore EDL scripts, the example process control system 100 of FIG. 1includes a process control system configuration system 150. As describedbelow in connection with FIG. 2, the example process control systemconfiguration system 150 of FIG. 1 includes an editor 210 (FIG. 2) toallow a user to create an EDL and/or interpretative script and/or schemathat represents in a vendor and/or system non-specific manner possiblyall of the process control system 100, and a compiler 220 to generatevendor and/or system specific configuration and/or operation databasesbased on the EDL script and/or schema. The vendor-specific configurationand/or operation database include one or more vendor-specific scripts,information and/or data that can be used to actually configure specificmakes and models of control components of the example process controlsystem 100 and/or are structured in accordance with a vendor-specificconfiguration language.

While FIG. 1 illustrates an example process control system 100 withinwhich the example apparatus, methods, and articles of manufacture todefine, describe and/or otherwise specify all or any portion(s) of aprocess plant control system via an EDL script described in greaterdetail below may be advantageously employed, persons of ordinary skillin the art will readily appreciate that the apparatus, methods, andarticles of manufacture described herein may, if desired, beadvantageously employed in other process plants and/or process controlsystems of greater or less complexity (e.g., having more than onecontroller, across more than one geographic location, etc.) than theillustrated example of FIG. 1. Moreover, while not shown in FIG. 1 forclarity of illustration, there may be any number and/or type(s) ofadditional and/or alternative devices, components and/or systemsincluded in a process plant and/or a process control system. Forexample, a process plant and/or a process control system may includeand/or implement a firewall, a switch, a router, a hub, a power supply,and/or any other devices managed and/or controllable by a processcontrol system, such as the DeltaV process control system sold byFisher-Rosemount Systems, Inc., an Emerson Process Management company.

FIG. 2 illustrates an example manner of implementing the example processcontrol system configuration system 150 of FIG. 1. To allow a user tocreate an EDL script and/or schema 205 that represents a process controlsystem, such as the example system 100 of FIG. 1, the exampleconfiguration system 150 of FIG. 2 includes any number and/or type(s) ofEDL editors, one of which is designated at reference numeral 210, and anEDL library 215. An example schema and EDL script 205 that may be usedto represent the example process control system 100 of FIG. 1 are shownbelow in connection with FIGS. 4 and 5, respectively. The example EDLlibrary 215 of FIG. 1 contains a plurality of EDL-based schemas and/ordescriptions for any number and/or type(s) of process control systemcomponents and/or process control system interconnections that may beselected and/or used to construct the example EDL script 205. Exampleschemas for some example process control system components that may beincluded in the example EDL library 215 are shown below in FIGS. 5-9. Aportion of another example EDL script 205 that can be created from theexample schema elements of FIGS. 8 and 9 is shown in FIG. 10.

The example EDL editor 210 may be configured to create, modify, viewand/or edit XML-based schemas and/or EDL scripts 205 and may, forexample, be implemented using XMLSpy® from Altova®. However, any EDLeditor 210 may be used instead. Utilizing one or more user interfacesand/or menus of the example EDL editor 210, a user interacts with theexample EDL editor 210 of FIG. 2 to create the example EDL script 205.For example, the user may interact with the EDL editor 210 to select,connect and/or configure schema elements from the EDL library 215 toform a vendor and/or system independent representation of (that is, aschema for) the example process control system 100 of FIG. 1.

To compile the example EDL-script 205, the example process controlsystem configuration system 150 of FIG. 2 includes the example compiler220. The example compiler 220 of FIG. 2 generates and/or forms thevendor-specific control system configuration scripts, files and/or data225 based on the vendor non-specific EDL script 205. The examplecompiler 220 may generate the vendor-specific information 225 bycompiling, translating and/or otherwise processing the EDL script 205.An example manner of implementing the example compiler 220 of FIG. 2 isdescribed below in connection with FIG. 3.

While forming the system-specific configuration information 225, theexample compiler 220 of FIG. 2 may access and/or query a device database230 for device-specific information and/or data. The example devicedatabase 230 of FIG. 2 contains information regarding the interfacesand/or methods implemented by specific control system components. Forexample, the EDL script 205 may include a reference to a generic I/Ogateway. When that generic I/O gateway reference is processed by theexample compiler 220, the compiler 220 obtains data and/or informationfrom the device database 230 that is specific to the make and model ofthe I/O gateway 140 included in the example process control system 100,and includes and/or incorporates such data and/or information in thesystem-specific configuration script(s) 225.

As shown in FIG. 2, the example device database 230 is implemented inconnection with a vendor-specific configuration system 240. The examplesystem specific configuration system 240 of FIG. 2 is a part of theDeltaV process control system sold by Fisher-Rosemount Systems, Inc., anEmerson Process Management company. To allow the example process controlsystem configuration script(s) and/or information 225 to be imported,the example DeltaV configuration system 240 of FIG. 2 includes adatabase server 245 having an import and/or database population module250. The example import module 250 of FIG. 2 imports data, files and/orother configuration information from the example system specificscript(s) 225 and stores the imported data, files and/or configurationinformation in a DeltaV configuration database 255. As configured via,for example, one or more configuration tools 260, the example databaseserver 245 of FIG. 2 creates a DeltaV operation database 265 based onand/or from data, files and/or other configuration information stored inthe DeltaV configuration database 255. The actual (i.e., physical)process control components of the process control system 100 are loaded,configured and/or programmed based on the thus formed example DeltaVoperation database 265. While the example system-specific configurationscript(s) 225 of FIG. 2 are generated by the example compiler 220, anyportion of the system-specific configuration script(s) 225 may,additionally or alternatively, be generated using other tools and/orinterfaces (not shown) of, for example, the DeltaV process controlsystem.

While an example manner of implementing the example process controlsystem configuration system 150 of FIG. 1 has been illustrated in FIG.2, one or more of the interfaces, data structures, elements, processesand/or devices illustrated in FIG. 2 may be combined, divided,re-arranged, omitted, eliminated and/or implemented in any other way.For example, the configuration system 240 may include configurationsystem modules specific to any number of additional and/or alternativeprocess control systems from other vendors. Further, the example EDLeditor 210, the example EDL script 205, the example EDL library 215, theexample compiler 220, the example system-specific script(s) 225, theexample device database 230, the example DeltaV configuration system240, the example database server 245, the example import module 250, theexample DeltaV configuration database, the example configuration tools260, the example DeltaV operation database 265 and/or, more generally,the example process control system configuration system 150 of FIG. 2may be implemented by hardware, software, firmware and/or anycombination of hardware, software and/or firmware. Thus, for example,any or the example EDL editor 210, the example EDL script 205, theexample EDL library 215, the example compiler 220, the examplesystem-specific script(s) 225, the example device database 230, theexample DeltaV configuration system 240, the example database server245, the example import module 250, the example DeltaV configurationdatabase, the example configuration tools 260, the example DeltaVoperation database 265 and/or, more generally, the example processcontrol system configuration system 150 may be implemented by one ormore circuit(s), programmable processor(s), application specificintegrated circuit(s) (ASIC(s)), programmable logic device(s) (PLD(s))and/or field programmable logic device(s) (FPLD(s)), etc. Further still,the process control system configuration system 150 may includeinterfaces, data structures, elements, processes and/or devices insteadof, or in addition to, those illustrated in FIG. 2 and/or may includemore than one of any or all of the illustrated interfaces, datastructures, elements, processes and/or devices.

FIG. 3 illustrates an example manner of implementing the examplecompiler 220 of FIG. 2. To identify categorized blocks of text (that is,tokens) within the EDL script 205, the example compiler 220 of FIG. 3includes a scanner 305 and a tokenizer 3 10. Using any number and/ortype(s) of algorithm(s), logic and/or method(s), the example scanner 305of FIG. 3 scans and/or parses the EDL script 205 to identify the lexemeswithin the EDL script 205, that is, to identify particular types ofstrings of characters contained in the EDL script 205. Example lexemesinclude, but are not limited to, a string of letters, a string ofnumbers, a punctuation mark, a mathematical operator, etc. Using anynumber and/or type(s) of algorithm(s), logic and/or method(s), theexample tokenizer 310 of FIG. 3 processes the lexemes identified by thescanner 305 to identify particular tokens, that is, classifiable stringsof input characters. For example, the scanner 305 may identify astring-of-letters lexeme representing, for example, a sentence, whichthe example tokenizer 310 demarcates and/or separates into one or morewords. Each token identified by the tokenizer 310 has both a value(e.g., the actual name of a variable) and a type (e.g., a variable, anoperator, a number, etc.).

To perform syntactic analysis, the example compiler 220 of FIG. 3includes a parser 315. Using any number and/or type(s) of algorithm(s),logic and/or method(s), the example parser 315 of FIG. 3 processesand/or analyzes the tokens identified by the example tokenizer 310 toidentify and/or determine their relationship(s) with respect to thegrammar of the EDL script 205. In other words, the example parser 315identifies the expressions contained within the EDL script 205.

To translate the expressions identified by the example parser 315 into avendor and/or system specific form, the example compiler 220 of FIG. 3includes an interpreter 320. Using any number and/or type(s) ofalgorithm(s), logic and/or method(s), the example interpreter 320 ofFIG. 3 translates each identified expression of the EDL script 205 intoa corresponding vendor-specific expression that represents acorresponding action for a particular make and model of control systemcomponent. For example, the EDL script 205 may contain an expressionassigning a value to an upper limit threshold of a generic temperaturegauge. Thus, the interpreter 320 generates one or more correspondingvendor-specific expressions and/or configuration statements 225 thatcorrectly configure the upper temperature limit for a particular makeand model of temperature gauge implemented within the process controlsystem 100. In such an example, the example interpreter 320 can obtainthe vendor-specific configuration language expressions to correctlyconfigure that make and model of temperature gauge from the devicedatabase 230.

While an example manner of implementing the example compiler 220 of FIG.2 has been illustrated in FIG. 3, one or more of the interfaces, datastructures, elements, processes and/or devices illustrated in FIG. 3 maybe combined, divided, re-arranged, omitted, eliminated and/orimplemented in any other way. Further, the example scanner 305, theexample tokenizer 310, the example parser 315, the example interpreter320 and/or, more generally, the example compiler 220 of FIG. 3 may beimplemented by hardware, software, firmware and/or any combination ofhardware, software and/or firmware. Thus, for example, any or theexample scanner 305, the example tokenizer 310, the example parser 315,the example interpreter 320 and/or, more generally, the example compiler220 may be implemented by one or more circuit(s), programmableprocessor(s), ASIC(s), PLD(s) and/or FPLD(s), etc. Further still, thecompiler 220 may include interfaces, data structures, elements,processes and/or devices instead of, or in addition to, thoseillustrated in FIG. 3 and/or may include more than one of any or all ofthe illustrated interfaces, data structures, elements, processes and/ordevices.

FIG. 4 illustrates an example schema 400 that may be used to graphicallyrepresent the example process control system 100 of FIG. 1. As shown inFIG. 4, the example process control system 100 includes the exampleworkstation 120 and the example process controller 110 of FIG. 1. Theexample controller 110 of FIG. 4 has a set of attributes 405 thatincludes, among other things, a name 406 and a description 407. Theexample controller 110 of FIG. 4 also has a set of capabilities 410,which are defined and/or specified as a set of attributes 415, and anynumber and/or type(s) of additional properties 420. For example, thecontroller 110 may include: (a) one or more interface cards 425 thatallow the controller 110 to communicate with other components of theexample process control system 100 (for example, any of the examplefield devices 130-134 and/or the example I/O gateway 140 of FIG. 1), (b)commands 430 that define and/or permit the execution of operations, suchas calibration, self-diagnosis, etc., and/or (c) menus 435 may be usedto implement a first-level interface structure without having to use aspecialized programming language. The example commands 430 of FIG. 4could be defined such that the commands are automatically inserted intothe menu structure 435 of the corresponding component. The example menus435 of FIG. 4 may be used to allow a user to access basic operations ofthe corresponding element, such as configuration, run-time operationand/or diagnostics. While only a portion of the example process controlsystem 100 is depicted in FIG. 4, persons of ordinary skill in the artwill readily appreciate that all or any portion of a process controlsystem can be depicted via a schema diagram in a manner similar to thatshown in FIG. 4.

FIG. 5 illustrates an example EDL script 500 that may be used torepresent the example schema 400 of FIG. 4 and, thus, to implement theexample EDL script 205 of FIG. 2. The example EDL script 500 of FIG. 5is constructed in accordance with XML. The process control system 100 ofthe example EDL script 500 of FIG. 5 references the controller 110 andthe workstation 120 via corresponding XML expressions. Likewise, thecontroller 110 references the example capabilities 410 of FIG. 4. Whileonly a portion of the example schema 400 of FIG. 4 is depicted in theexample EDL script 500 of FIG. 5, persons of ordinary skill in the artwill readily appreciate that all or any portion of a process controlsystem schema and, thus, a process control system can be expressed in anEDL script in a manner similar to that shown in FIG. 5.

FIGS. 6-9 illustrate some example graphical schema elements that may beused and/or combined to depict and/or define a process control system.The example schema elements of FIGS. 6-9 may be included in a pluralityof schemas stored in and/or accessible from the example EDL library 215of FIG. 2. The example schema element of FIG. 6 depicts a processcontrol system 100 including the controller 110 and the workstation 120.The example schema element of FIG. 7 depicts the process controller 110having the attributes 415, the capabilities 410, other properties 420,cards 425, commands 430 and menus 435. The illustrated example of FIG. 4is an example combination of the example schema elements of FIGS. 6 and7.

FIG. 8 illustrates an example schema that may be used to depict and/ordefine an interface card 805 to be assigned to and/or linked to, forexample, a card 425 of the example controller schema of FIG. 7. Theexample schema of FIG. 9 depicts and/or defines an I/O channel 905 thatmay be assigned to and/or linked to, for example, an I/O channel 810 ofthe example interface card 805 of FIG. 8.

FIG. 10 illustrates a portion of an example EDL script that represents acombination of the example schema elements of FIGS. 8 and 9. In theillustrated example of FIG. 10, the example I/O channel 905 of FIG. 9 islinked to the I/O channel 810 of the example interface card 805 of FIG.8, as depicted with line 1005.

FIG. 11 illustrates a flowchart representative of an example processthat may be carried out to configure the example process control system100 based on an EDL schema and/or script. FIG. 12 illustrates aflowchart representative of an example process that may be carried outto implement the example compiler 220 of FIGS. 2 and 3. The exampleprocesses of FIGS. 11 and 12 may be carried out by a processor, acontroller and/or any other suitable processing device. For example, theexample processes of FIGS. 11 and 12 may be embodied in codedinstructions stored on any tangible computer-readable medium such as aflash memory, a compact disc (CD), a digital versatile disc (DVD), afloppy disk, a read-only memory (ROM), a random-access memory (RAM), aprogrammable ROM (PROM), an electronically-programmable ROM (EPROM),and/or an electronically-erasable PROM (EEPROM), an optical storagedisk, an optical storage device, magnetic storage disk, a magneticstorage device, and/or any other medium which can be used to carry orstore program code and/or instructions in the form of machine-accessibleinstructions or data structures, and which can be accessed by aprocessor, a general-purpose or special-purpose computer, or othermachine with a processor (e.g., the example processor platform P100discussed below in connection with FIG. 13). Combinations of the aboveare also included within the scope of computer-readable media.Machine-accessible instructions comprise, for example, instructionsand/or data that cause a processor, a general-purpose computer,special-purpose computer, or a special-purpose processing machine toimplement one or more particular processes. Alternatively, some or allof the example processes of FIGS. 11 and 12 may be implemented using anycombination(s) of ASIC(s), PLD(s), FPLD(s), discrete logic, hardware,firmware, etc. Also, some or all of the example processes of FIGS. 11and 12 may instead be implemented manually or as any combination of anyof the foregoing techniques, for example, any combination of firmware,software, discrete logic and/or hardware. Further, many other methods ofimplementing the example operations of FIGS. 11 and 12 may be employed.For example, the order of execution of the blocks may be changed, and/orone or more of the blocks described may be changed, eliminated,sub-divided, or combined. Additionally, any or all of the exampleprocesses of FIGS. 11 and 12 may be carried out sequentially and/orcarried out in parallel by, for example, separate processing threads,processors, devices, discrete logic, circuits, etc.

The example process of FIG. 11 begins with the use of the example EDLeditor 210 to create and/or generate of a schema and/or an EDL script205, such as the example schema 400 of FIG. 4 and/or the example EDLscript 500 of FIG. 5, for the example process control system 100 (block1105). The example compiler 220 is executed and/or operated to create asystem and/or vendor-specific data and/or configuration information 225from the EDL script 205 (block 1110).

Using the example import and/or database population module 250, thesystem and/or vendor-specific data and/or configuration information 225is imported into the system and/or vendor-specific configurationdatabase 255 (block 1115). The example database server 245 is operatedand/or executed to form the system and/or vendor-specific operationdatabase 265 based on the configuration database 255 (block 1120). Theprocess control system 100 is configured, loaded and/or programmed fromthe operation database 265 (block 1125). Control then exits from theexample process of FIG. 11.

The example process of FIG. 12 begins with the example scanner 305 ofFIG. 3 scanning the EDL script file 205 to identify the lexemescontained in the EDL script file 205 (block 1205). The example tokenizer310 identifies tokens contained in the EDL script file 205 based on theidentified lexemes (block 1210).

Based on the tokens identified by the tokenizer 310, the example parser315 of FIG. 3 analyzes the tokens to determine the grammaticalrelationships between the tokens (block 1215). The example interpreter320 translates the identified grammatical relationships intoexpressions, data and/or configuration information 225 that are specificto particular make(s) and/or model(s) of process control systemcomponents (block 1220). Control then exits from the example process ofFIG. 12.

FIG. 13 is a schematic diagram of an example processor platform P100that may be used and/or programmed to implement the example processcontrol system configuration system 150 and/or the example compiler 220of FIGS. 1, 2 and 3. For example, the processor platform P100 can beimplemented by one or more general-purpose processors, processor cores,microcontrollers, etc.

The processor platform P100 of the example of FIG. 13 includes at leastone general-purpose programmable processor P105. The processor P105executes coded instructions P110 and/or P112 present in main memory ofthe processor P105 (e.g., within a RAM P115 and/or a ROM P120). Theprocessor P105 may be any type of processing unit, such as a processorcore, a processor and/or a microcontroller. The processor P105 mayexecute, among other things, the example processes of FIGS. 11 and/or 12to implement the example methods and apparatus described herein.

The processor P105 is in communication with the main memory (including aROM P120 and/or the RAM P115) via a bus P125. The RAM P115 may beimplemented by dynamic random access memory (DRAM), synchronous dynamicrandom access memory (SDRAM), and/or any other type of RAM device(s),and ROM may be implemented by flash memory, EPROM, EEPROM, a CD, a DVDand/or any other desired type of memory device(s). Access to the memoryP115 and the memory P120 may be controlled by a memory controller (notshown). The example memory P115 may be used to implement the example EDLscript 205, the example EDL library 215, the example system and/orvendor-specific script(s) 225, the example device database 230, theexample configuration database 225 and/or the example operation database265.

The processor platform P100 also includes an interface circuit P130. Theinterface circuit P130 may be implemented by any type of interfacestandard, such as an external memory interface, serial port,general-purpose input/output, etc. One or more input devices P135 andone or more output devices P140 are connected to the interface circuitP130.

Although certain example methods, apparatus and articles of manufacturehave been described herein, the scope of coverage of this patent is notlimited thereto. Such example are intended to be non-limitingillustrative examples. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe appended claims either literally or under the doctrine ofequivalents.

1. A method comprising: loading a first script representative of aprocess plant, the first script comprising an interpretive system-levelscript structured in accordance with an electronic description language;and compiling the first script to form a second script, the secondscript structured in accordance with a vendor-specific configurationlanguage associated with a particular process control system for theprocess plant.
 2. A method as defined in claim 1, wherein the firstscript is compile-able to form a third script structured in accordancewith a second vendor-specific configuration language associated with asecond process control system for at least one of the process plant or asecond process plant.
 3. A method as defined in claim 1, whereincompiling the first script to form the second script comprises:identifying one or more lexemes contained in the first script;identifying tokens contained in the first script based on the one ormore lexemes; identifying one or more grammatical relationships betweenthe tokens; and forming the second script based on the tokens and thegrammatical relationships.
 4. A method as defined in claim 1, whereinthe first script is constructed in accordance with an extensible markuplanguage.
 5. A method as defined in claim 1, wherein the first scriptrepresents a relationship between a first device of the process controlsystem and a second device of the process control system.
 6. A method asdefined in claim 5, wherein the first device comprises a field deviceand the second device comprises a control system component.
 7. A methodas defined in claim 1, further comprising importing the second scriptinto a process control system configuration database associated with theprocess control system.
 8. A method as defined in claim 1, furthercomprising: generating a process control system operation database basedon the second script; and configuring the process control system basedon the operation database.
 9. An apparatus comprising: an editor useableto create a first script representative of a process plant, the firstscript comprising an interpretable system-level script structured inaccordance with an electronic description language; and a compiler toform a second script from the first script, the second script structuredin accordance with a vendor-specific configuration language associatedwith a particular process control system for the process plant.
 10. Anapparatus as defined in claim 9, wherein the first script is to becompiled to form a third script, the third script structured inaccordance with a second configuration language associated with a secondprocess control system for at least one of the process plant or a secondprocess plant.
 11. An apparatus as defined in claim 9, wherein thecompiler comprises: a scanner to identify one or more lexemes containedin the first script; a tokenizer to identify tokens contained in thefirst script based on the one or more lexemes; a parser to identify oneor more grammatical relationships between the tokens; and an interpreterto form the second script based on the tokens and the grammaticalrelationships.
 12. An apparatus as defined in claim 9, wherein the firstscript is constructed in accordance with an extensible markup language.13. An apparatus as defined in claim 9, wherein the first scriptrepresents a relationship between a first device of the process controlsystem and a second device of the process control system.
 14. Anapparatus as defined in claim 9, further comprising: a databasepopulator to populate a process control system configuration databasebased on the second script; and a database server to configure theprocess control system based on the process control system configurationdatabase.
 15. An article of manufacture storing machine readableinstructions that, when executed, cause a machine to: load a firstscript representative of a process plant, the first script comprising aninterpretive system-level script structured in accordance with anelectronic description language; and compile the first script to form asecond script, the second script structured in accordance with avendor-specific configuration language associated with a particularprocess control system for the process plant.
 16. An article ofmanufacture as defined in claim 15, wherein the machine readableinstructions, when executed, cause the machine to compile the firstscript to form a third script structured in accordance with a secondvendor-specific configuration language associated with a second processcontrol system for at least one of the process plant or a second processplant.
 17. An article of manufacture as defined in claim 15, wherein themachine readable instructions, when executed, cause the machine tocompile the first script to form the second script by: identifying oneor more lexemes contained in the first script; identifying tokenscontained in the first script based on the one or more lexemes;identifying one or more grammatical relationships between the tokens;and forming the second script based on the tokens and the grammaticalrelationships.
 18. An article of manufacture as defined in claim 15,wherein the first script represents a relationship between a fielddevice of the process control system and a control system component ofthe process control system.
 19. An article of manufacture as defined inclaim 15, wherein the machine readable instructions, when executed,cause the machine to import the second script into a process controlsystem configuration database associated with the process controlsystem.
 20. An article of manufacture as defined in claim 15, whereinthe machine readable instructions, when executed, cause the machine to:generate a process control system operation database based on the secondscript; and configure the process control system based on the operationdatabase. 21-27. (canceled)